$(function(){
	/**
	 * 查询删除的文件
	 */
	selectDeleteFile();
	
	$("ul li a[href$='recycleList.jsp']").addClass("active");
	
	/**
	 * 恢复文件事件单个
	 */
	$("#recycleList").on("click",".restoreFile",function(){
		
		var text =$(this).attr("uuid")+",";
		$("#restoreUuidAll").val(text);
		restoreFile();
	});
	
	/**
	 * 同时恢复多个删除的文件
	 */
	$("#fileName").on("click",".restoreFileAll",function(){
		restoreFile();
	});
	/**
	 * 删除文件事件
	 */
	$("#recycleList").on("click",".deleteFile",function(){
		deleteFile($(this).attr("key"));
	});
	/**
	 * 清空文件的事件
	 */
	$("#emptyRecyCle").on("click",emptyRecyCle);
	/**
	 * 添加回收站查询事件
	 */
	$("#checkEmpty").on("click",checkEmpty);
	
	/**
	 * 点击最顶端的事件出现选中的个数
	 */
	$('table th input:checkbox').on('click', function(){
		var p = this;
		var text="";
		$(p).closest('table').find('tr > td:first-child input:checkbox').each(function(){
			this.checked = p.checked;
			text = text+$(this).attr("uuid")+",";
		});
		$("#restoreUuidAll").val(text);
		showCheckedCount();		//修改选中数
	});
	/**
	 * 单个checkbox事件
	 */
	$('#recycleList').on('click','.checkRecycle',showCheckedCount);
	/**
	 * 给最顶端的删除按钮添加事件 按钮是隐藏的
	 */
	$("#fileName").on('click','.buttonDelete',remove);
	
	
});
/**
 * 查询删除的所有文件 和文件夹
 */
function selectDeleteFile(){
	Otod.ajax({
		url:ctx+'/cd/doc/queryForListRecycle.do',
		type:"GET",
		successFn:function(data){
			
			recycleList(data);
		}
	});
}

//渲染阶段
function recycleList(data){
	var showRecycleListMtp = $('#showRecycleListMtp').html();
	Mustache.parse(showRecycleListMtp);
	var rendered = Mustache.render(showRecycleListMtp,{
			data: data,
			formatDt: function(){
				return function(text,render){
					return DateUtil.dateFormat(+render(text));		//+render(text)  加号是把string转换为number类型
				};
			}
	});
	$("#recycleList").html(rendered);
}

/*//创建所有删除文件文件夹列表包
function recycleList(appendTo,stepId,stepName,taskArray){
	var stepMtp = $('#stepMtp').html();
	Mustache.parse(stepMtp);
	
	var taskItemMtp = $('#taskItemMtp').html();
	
	var rendered = Mustache.render(stepMtp, {stepId: stepId, stepName: stepName,taskArray: taskArray},{taskItemLink:taskItemMtp});
	$('#'+appendTo).append(rendered);
}*/



/**
 * 清空回收站 
 */
function emptyRecyCle(){
	Otod.Msg.confirm('清空回收站后数据将永久删除您确定要清空', '清空回收站', empty);
	function empty(){
		Otod.ajax({
			url:ctx+'/cd/doc/emptyRecyCle.do',
			type:'GET',
			successFn:function(){
				//重新刷新数据
				selectDeleteFile();
				Otod.Msg.confirm("清空回收站成功");
			}
		});
	}
}
/**
 * 回收站点击触发的方法
 */
function checkEmpty(){
	selectDeleteFile();
}
/**
 * 还原文件 
 */
function restoreFile(){
	if (!$("#restoreUuidAll").val()) {
		var checkedStr = "";
		var checkedArrays = $('#recycleList .checkRecycle:checked');
		for (var i = 0; i < checkedArrays.length; i++) {

			if(i==0){
				checkedStr=checkedArrays[i].value;
			}else{
				checkedStr=checkedStr+","+checkedArrays[i].value;
			}
		}
		$("#restoreUuidAll").val(checkedStr);
	}
	Otod.ajax({
		url:ctx+'/cd/doc/updatedelSource.do',
		data:{uuid:$("#restoreUuidAll").val()},
		type:'GET',
		successFn:function(data){
				if(data.info!=""){
					Otod.Msg.info(data.info+"名字已经存在不能还原");
				}
			emptyCheckBoxOrFileName();
			//重新刷新数据
			selectDeleteFile();
		}
	});
}
/**
 * 删除选中的文件单个
 * @param uuid
 */
function deleteFile(uuid){
	Otod.Msg.confirm('您确定要删除选中的文件','删除回收站文件或文件夹',delOk);
	function delOk(){
		Otod.ajax({
			url:ctx+'/cd/doc/deleteFileUuid.do',
			data:{uuid:uuid},
			type:'GET',
			successFn:function(){
				//重新加载数据
				selectDeleteFile();
				
			}
		});
	}	
}

/**
 * 同时删除多个选中的文件文件夹
 */
function remove(){ 
	
	Otod.Msg.confirm('您确定要删除选中的文件或文件夹',"删除", delOk);
	
	function delOk(){
		
		var checkedStr = "";
		var checkedArrays = $('#recycleList .checkRecycle:checked');
		for (var i = 0; i < checkedArrays.length; i++) {

			if(i==0){
				checkedStr=checkedArrays[i].value;
			}else{
				checkedStr=checkedStr+","+checkedArrays[i].value;
			}
		}
		Otod.ajax({
				url: ctx + '/cd/doc/deleteFileUuid.do',
				data: {uuid:checkedStr},
				type:"GET",
				successFn : function(data) {
					//重新加载数据
					selectDeleteFile();
					//清除不必要的数据
					emptyCheckBoxOrFileName();
					
				}
		}); 
		
	}
	
}


/**
 * 显示选中文件数
 */
function showCheckedCount(){
	var choiceNumbers = $('#recycleList .checkRecycle:checked').length;
	var html = "文件名";																																				
	if(choiceNumbers>0){																												
		html = '<lable id="file_action_word">已选中'+choiceNumbers+'个文件/文件夹</lable>&nbsp;&nbsp;&nbsp;&nbsp;<button type="button" class="btn btn-xs btn-checkBox icon-reply restoreFileAll" data-toggle="button" >还原</button> <button type="button" class="btn btn-xs btn-checkBox icon-trash buttonDelete" data-toggle="button" > 删除</button>';
	}else{
		$('table th input:checkbox').attr("checked",false);
	}
	$("#fileName").html(html);	
	
}


/**
 * 清空数据 是让checkBox 不选中
 */
function emptyCheckBoxOrFileName(){
	$("#fileName").html("文件名");
	//删除之后让最上面的checkBox不选中
	//$('.ace').attr("checked",false); --直接通过类名删除
	$('table th input:checkbox').attr("checked",false);
	
}



